package com.apps.java.javanote;

public class _3流程控制语句 {
    /**
     * 一、顺序结构
     * 		顺序结构是程序中最简单最基本的流程控制，没有特定的语法结构，
     * 		按照代码的先后顺序，依次执行，程序中大多数的代码都是这样执行的
     *
     * 二、if语句
     * 	 1.格式一
     * 			if(关系表达式){
     * 				语句体;
     * 			}
     * 		执行流程：
     * 			1.首先计算关系表达式的值
     * 			2.如果关系表达式的值是true就执行语句体
     * 			3.如果关系表达式的值为false就不执行语句体
     * 			4.继续执行后面的语句内容
     * 	 2.格式二
     * 			if(关系表达式){
     * 				语句体1;
     * 			}else{
     * 				语句体2;
     * 			}
     * 		执行流程：
     * 			1.首先计算关系表达式的值
     * 			2.如果关系表达式的值为true就执行语句体1
     * 			3.如果关系表达式的值为false就执行语句体2
     * 			4.继续执行后面的语句内容
     * 	 3.格式三
     * 			if(关系表达式1){
     * 				语句体1;
     * 			}else if(关系表达式2){
     * 				语句体2;
     * 			}...
     * 			else{
     * 				语句体n+1;
     * 			}
     * 		执行流程
     * 			1.首先计算关系表达式1的值
     * 			2.如果值为true就执行语句体1，如果值为false就计算表达式2的值
     * 			3.如果值为true就执行语句体2，如果值为false就计算关系表达式3的值
     * 			4.···
     * 			5.如果没有任何关系表达式为true，就执行语句体n+1
     *
     * 三、switch语句
     * 		格式：
     * 			switch(表达式){
     * 				case 值1:
     * 					语句体1;
     * 					break;
     * 				case 值2:
     * 					语句体2;
     * 					break;
     * 				···
     * 				defailt:
     * 					语句体n+1;
     * 					[break;]
     * 			}
     * 		格式说明：
     * 			表达式：	 取值为byte、short、int、char，JDK5以后可以是枚举，
     * 					 JDK7以后可以是String。
     * 			case：	 后面跟的是要和表达式进行比较的值。
     * 			break：	 表示中断，结束的意思，用来结束switch语句。
     * 			default：表示所有情况都不匹配的时候，就执行该处的内容，和if语句的else相似。
     *
     * 四、循环结构
     * 		循环结构的形成：
     * 			初始化语句：	用于表示循环开启时的起始状态，简单说就是循环开始的时候什么样
     * 			条件判断语句：	用于表示循环反复执行的条件，简单说就是判断循环是否能一直执行下去
     * 			循环体语句：	用于表示循环反复执行的内容，简单说就是循环反复执行的事情
     * 			条件控制语句：	用于表示循环执行中每次变化的内容，简单说就是控制循环是否能执行下去
     *
     * 		循环结构对应的语法：
     * 			初始化语句：	这里可以是一条或者多条语句，这些语句可以完成一些初始化操作
     * 			条件判断语句：	这里使用值为boolean类型的表达式，这个表达式能决定是否执行循环体
     * 			循环体语句：	这里可以是任意语句，这些语句将反复执行
     * 			条件控制语句：	这里通常是使用一条语句来改变变量的值，从而达到控制循环是否继续向下执行的效果
     *   1.for循环语句
     * 		格式：
     * 			for(初始化语句;条件判断语句;条件控制语句){
     * 					循环体语句;
     * 			}
     * 		执行流程
     * 			1.执行初始化语句
     * 			2.执行条件判断语句，看其结果是true还是false
     * 				如果是false，循环结束
     * 				如果是true，继续循环
     * 			3.执行循环体语句
     * 			4.执行条件控制语句
     * 			5.会到2.继续
     *
     *   2.while循环语句
     *   	基本格式：
     *   		while(条件判断语句){
     *   			循环体语句;
     *   		}
     *   	完整格式：
     *   		初始化语句;
     *   		while(条件判断语句){
     *   			循环体语句;
     *   			条件控制语句;
     *   		}
     * 		执行流程：
     * 			1.执行初始化语句
     * 			2.执行条件判断语句，看其结果是true还是false
     * 				如果是false，结束循环
     * 				如果是true，继续循环
     * 			3.执行循环体语句
     * 			4.执行条件控制语句
     * 			5.会到2.继续
     *
     * 	 3.do...while语句
     * 		基本格式：
     * 			do{
     * 				循环体语句;
     * 			}while(条件判断语句);
     * 		完整格式：
     * 			初始化语句;
     * 			do{
     * 				循环体语句;
     * 				条件控制语句;
     * 			}while(条件判断语句);
     * 		执行流程：
     * 			1.执行初始化语句
     * 			2.执行循环体语句
     * 			3.执行条件控制语句
     * 			4.执行条件判断语句，看其结果是true还是false
     * 				如果是false，结束循环
     * 				如果是true，继续循环
     * 			5.会到2.继续
     *
     *
     * 三种循环的区别：
     * 		1.三种循环的区别
     * 			for循环和while循环先判断条件是否成立，然后决定是否执行循环体（先判断后执行）
     * 			do...while循环先执行一次循环体，然后判断条件是否成立，是否继续执行循环体（先执行后判断）
     * 		2.for和while的区别
     * 			条件控制语句所控制的自增变量，因为归属for循环的语法结构中，在for循环结束后，就不能再次被访问到了
     * 			条件控制语句所控制的自增变量，罪域while循环来说不归属其语法结构中，在while循环结束后，该变量还可以继续使用
     * 		3.死循环格式
     * 			for(;;){}
     * 			while(true){}	[while的死循环格式是最常用的]
     * 			do{}while(true);
     *
     * 跳转控制语句
     * 		概述：
     * 			1.continue：用在循环中，基于条件控制，跳过某次循环体内容的执行，继续下一次的执行
     * 			2.break：用在循环中，基于条件控制，终止循环体内容的执行，也就是说结束当前的整个循环
     *
     * 循环嵌套
     * 		语句结构：
     * 			顺序语句：以分号结尾，表示一句话的结束
     * 			分支语句：
     * 					1.一对大括号表示if的整体结构，整体描述一个完整的if语句
     * 					2.一对大括号表示switch的整体结构，整体描述一个完整的switch语句
     * 			顺序语句：
     * 					1.一对大括号表示for的整体结构，整体描述一个完整的for语句
     * 					2.一对大括号表示while的整体结构，整体描述一个完整的while语句
     * 					3.do...while以分号结尾，整体描述一个完整的do...while语句
     * 			任何依据对外都可以看成是一句话，一句代码
     *
     * Random
     * 		作用：用于产生随机数
     * 		步骤：
     * 			1.导包		import java.util.Random;	[导包的动作必须出现在类定义的上面]
     * 			2.创建对象		Random r = new Random();	[r是变量名，可以变，其他都不允许变]
     * 			3.获取随机数	int number = r.nextInt(10)	[number是变量名，可以变，数字10可以变，其他都不允许变]
     *
     *
     *
     *
     *
     *
     *
     */
}
